home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 2: CDPD 1
/
Almathera Ten on Ten - Disc 2: CDPD 1.iso
/
pd
/
076-100
/
077
/
samples
/
sieve.d
< prev
next >
Wrap
Text File
|
1995-03-13
|
649b
|
36 lines
/* Eratosthenes Sieve Prime Number Program in Draco */
bool
DEBUG = false;
int
SIZE = 8190,
ITERATIONS = 10;
proc main()void:
[SIZE + 1] bool flags;
unsigned ITERATIONS iter;
uint i, prime, k, count;
writeln(ITERATIONS, " iterations.");
for iter from 1 upto ITERATIONS do
count := 0;
for i from 0 upto SIZE do
flags[i] := true;
od;
for i from 0 upto SIZE do
if flags[i] then
prime := 2 * i + 3;
if DEBUG then
writeln(prime);
fi;
for k from i + prime by prime upto SIZE do
flags[k] := false;
od;
count := count + 1;
fi;
od;
od;
writeln(count, " primes.");
corp;